package com.xinhua.erp.pojo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.xinhua.erp.utils.JsonLongSerializer;

import javax.persistence.Entity;
import javax.persistence.Id;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Entity
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})

public class Retail implements Serializable {
    @Id
    @JsonSerialize(using = JsonLongSerializer.class)
    private Long id;

    private String type;

    private Long stockhouseId;

    private String stockhouseName;

    @JsonSerialize(using = JsonLongSerializer.class)
    private Long organId;

    private String organName;

    @JsonSerialize(using = JsonLongSerializer.class)
    private Long productId;

    private String productName;

    @JsonSerialize(using = JsonLongSerializer.class)
    private Long productunitId;

    private String productunit;

    private String orderNumber;

    private String number;

    private LocalDateTime time;

    @JsonSerialize(using = JsonLongSerializer.class)
    private Long userId;

    private String userName;

    private BigDecimal price;

    private BigDecimal amount;

    private String status;

    @JsonSerialize(using = JsonLongSerializer.class)
    private Long accountId;

    private String account;

    private String remark;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public Long getStockhouseId() {
        return stockhouseId;
    }

    public void setStockhouseId(Long stockhouseId) {
        this.stockhouseId = stockhouseId;
    }

    public String getStockhouseName() {
        return stockhouseName;
    }

    public void setStockhouseName(String stockhouseName) {
        this.stockhouseName = stockhouseName;
    }

    public Long getOrganId() {
        return organId;
    }

    public void setOrganId(Long organId) {
        this.organId = organId;
    }

    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Long getProductunitId() {
        return productunitId;
    }

    public void setProductunitId(Long productunitId) {
        this.productunitId = productunitId;
    }

    public String getProductunit() {
        return productunit;
    }

    public void setProductunit(String productunit) {
        this.productunit = productunit;
    }

    public String getOrderNumber() {
        return orderNumber;
    }

    public void setOrderNumber(String orderNumber) {
        this.orderNumber = orderNumber;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }

    public LocalDateTime getTime() {
        return time;
    }

    public void setTime(LocalDateTime time) {
        this.time = time;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Long getAccountId() {
        return accountId;
    }

    public void setAccountId(Long accountId) {
        this.accountId = accountId;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
